1. Field of the Invention
The present invention is generally related to the field of computer platforms. More particularly, the present invention is related to a system and method for automatically maintaining components of a computing platform operating in an optimal state.
2. Description
Today's computing platforms have a large variety of components/devices, thus making them much more complex and difficult for the average user to support. Each of the components/devices on a computing platform may need to be periodically updated. For example, a motherboard may have a platform management agent that may proxy firmware updates to the components/devices typically found on the motherboard. Thus, updates to these typical components/devices may be facilitated by the platform management agent in conjunction with a remote administrator.
For devices that are added to the motherboard, i.e., non-standard devices or add-in cards, the platform management agent may not be able to communicate with these add-in cards, and therefore may be unable to facilitate any kind of component/device firmware updates. Remote administrators may not even be aware of the add-in cards, and thus, are also unable to facilitate any kind of component/device firmware updates.
Since platforms do not provide a generic means in which firmware updates for these add-in devices may be maintained, tracking firmware updates for these individual add-in devices is left to the user. To perform an update for these add-in devices, a typical user would have to determine or know what add-in devices are found on the system, the location of each add-in device, and the current firmware version that is running on each add-in device. Then the user would have to connect to independent hardware vendor websites for the add-in devices to obtain the latest code/option ROM (Read-Only Memory) firmware data, download the correct version of firmware data, and run installation software to update the firmware for each of the add-in devices. Often times, the user may then have to reboot his/her computer system to initiate the firmware updates. Thus, keeping track of, and performing, firmware updates for add-in devices is a tedious and time consuming job that the typical user does not have the time or the where with all to do.
Therefore, what is needed is a means by which firmware components, such as, for example, device option ROMs and device drivers, may be managed autonomously by the residing platform to provide these devices with the latest firmware or option ROM updates.